package util.old;

import java.sql.*;


/**
 * @author xzy
 * @create 2021/9/30 14:43
 */


class Mysql{
    //数据库连接
    Connection conn = null;
    Statement stmt = null;
    // JDBC 驱动名及数据库 URL
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://localhost:3306/runoob";
    // 数据库的用户名与密码，需要根据自己的设置
    static final String USER = "root";
    static final String PASS = "x1575280002";

    public Mysql(){
        System.out.println("Mysql");
    }

    //执行sql语句
    public void executeNotReturn(String sql){
        try{
            Class.forName(JDBC_DRIVER);
            conn = DriverManager.getConnection(DB_URL,USER,PASS);
            stmt = conn.createStatement();
            stmt.executeQuery(sql);//执行sql语句

            // 完成后关闭
            stmt.close();
            conn.close();
        } catch(SQLException se) {
            // 处理 JDBC 错误
            se.printStackTrace();
        } catch(Exception e) {
            // 处理 Class.forName 错误
            e.printStackTrace();
        }
    }

    //增
    public void add(){
        String sql = "CREATE TABLE TALK " +
                "(title TEXT PRIMARY KEY     NOT NULL," +
                "text      TEXT ," +
                "author    TEXT ," +
                "date      TEXT)";

        executeNotReturn(sql);
    }
    //删
    public void delete(){

    }
    //改
    public void update(){

    }
    //查
    public void search(){

    }

    //demo
    public void demo(){
        try{
            // 注册 JDBC 驱动器
            Class.forName(JDBC_DRIVER);

            // 打开一个连接
            conn = DriverManager.getConnection(DB_URL,USER,PASS);

            // 执行 SQL 查询
            stmt = conn.createStatement();
            String sql;
            sql = "SELECT id, name, url FROM websites";
            ResultSet rs = stmt.executeQuery(sql);

            // 展开结果集数据库
            while(rs.next()){
                // 通过字段检索
                int id  = rs.getInt("id");
                String name = rs.getString("name");
                String url = rs.getString("url");


                System.out.println(id);
                System.out.println(name);
                System.out.println(url);
            }

            // 完成后关闭
            rs.close();
            stmt.close();
            conn.close();
        } catch(SQLException se) {
            // 处理 JDBC 错误
            se.printStackTrace();
        } catch(Exception e) {
            // 处理 Class.forName 错误
            e.printStackTrace();
        }finally{
            // 最后是用于关闭资源的块
            try{
                if(stmt!=null)
                    stmt.close();
            }catch(SQLException se2){
            }
            try{
                if(conn!=null)
                    conn.close();
            }catch(SQLException se){
                se.printStackTrace();
            }
        }
    }
}